home *** CD-ROM | disk | FTP | other *** search
/ Treccani Italiana Di Scienze Lettere Ed Arti / [Enciclopedia] Treccani Italiana di scienze lettere ed arti.iso / pc / data / xxi_appendice_dvd.swf / scripts / __Packages / CNormalize.as < prev    next >
Text File  |  2007-11-08  |  3KB  |  107 lines

  1. class CNormalize extends Object
  2. {
  3.    function CNormalize(inTableSize)
  4.    {
  5.       super();
  6.       this.mLoaded = false;
  7.       this.mSingleChar = true;
  8.       this.mTableSize = inTableSize;
  9.       this.mDelChar = " ";
  10.       this.mTableUrl = "";
  11.    }
  12.    function LoadTable(inTableUrl)
  13.    {
  14.       this.mTable = new Array();
  15.       this.mLoaded = false;
  16.       this.mTableUrl = inTableUrl;
  17.       var _loc2_ = 0;
  18.       while(_loc2_ <= 32)
  19.       {
  20.          this.mTable.push(" ");
  21.          _loc2_ = _loc2_ + 1;
  22.       }
  23.       _loc2_ = 33;
  24.       while(_loc2_ < this.mTableSize)
  25.       {
  26.          this.mTable.push(String.fromCharCode(_loc2_));
  27.          _loc2_ = _loc2_ + 1;
  28.       }
  29.       var _loc3_ = new LoadVars();
  30.       _loc3_.mParent = this;
  31.       _loc3_.onData = mx.utils.Delegate.create(this,this.onData);
  32.       _loc3_.onLoad = mx.utils.Delegate.create(this,this.onLoad);
  33.       _loc3_.load(inTableUrl);
  34.    }
  35.    function onLoad()
  36.    {
  37.    }
  38.    function onData(rawData)
  39.    {
  40.       var _loc10_ = rawData.length;
  41.       if(rawData == undefined)
  42.       {
  43.          return undefined;
  44.       }
  45.       var _loc7_ = rawData.split("\r\n");
  46.       var _loc6_ = undefined;
  47.       var _loc8_ = undefined;
  48.       var _loc4_ = undefined;
  49.       var _loc2_ = undefined;
  50.       var _loc3_ = 0;
  51.       while(_loc3_ < _loc7_.length)
  52.       {
  53.          var _loc5_ = _loc7_[_loc3_];
  54.          if(_loc5_ != "")
  55.          {
  56.             _loc6_ = _loc5_.split("\t");
  57.             _loc8_ = StringUtils.trim(_loc6_[0]);
  58.             _loc4_ = _loc8_.charCodeAt(0);
  59.             _loc2_ = StringUtils.trim(_loc6_[1]);
  60.             if(_loc4_ <= this.mTableSize && _loc2_ != "")
  61.             {
  62.                if(_loc2_ == "SP")
  63.                {
  64.                   _loc2_ = " ";
  65.                }
  66.                else if(_loc2_ == "DEL")
  67.                {
  68.                   _loc2_ = this.mDelChar;
  69.                }
  70.                if(this.mSingleChar)
  71.                {
  72.                   this.mTable[_loc4_] = _loc2_.charAt(0);
  73.                }
  74.                else
  75.                {
  76.                   this.mTable[_loc4_] = _loc2_;
  77.                }
  78.             }
  79.          }
  80.          _loc3_ = _loc3_ + 1;
  81.       }
  82.       this.mLoaded = true;
  83.    }
  84.    function Normalize(inString, inMode)
  85.    {
  86.       var _loc12_ = undefined;
  87.       var _loc7_ = new Array();
  88.       var _loc8_ = "";
  89.       var _loc5_ = inString.length;
  90.       var _loc3_ = "";
  91.       var _loc4_ = undefined;
  92.       var _loc2_ = 0;
  93.       while(_loc2_ < _loc5_)
  94.       {
  95.          _loc4_ = inString.charCodeAt(_loc2_);
  96.          _loc3_ = this.mTable[_loc4_];
  97.          _loc8_ += _loc3_;
  98.          if(_loc3_.length > 1)
  99.          {
  100.             _loc7_.push({pos:_loc2_,len:_loc3_.length});
  101.          }
  102.          _loc2_ = _loc2_ + 1;
  103.       }
  104.       return {text:_loc8_,shift:_loc7_};
  105.    }
  106. }
  107.